1. Field of the Invention
The invention is related to a system and method to enable sharing of buffering resources across traffic classes on devices that support link level flow control, more particularly, to a dynamic threshold mechanism to optimize throughput performance for shared memory switch devices to optimize throughput performance for shared memory switch devices that offer link level flow control support.
2. Description of the Related Art
With transmission of data over a digital communication network, such as an asynchronous transfer mode or ATM network, problems arise when multiple sources send data cells or packets at widely varying rates through a switch node or link of the network at an aggregated rate which taxes the ability of the switch node or link to handle the data. Congestion occurs at the node of a network when data arrives at the node at a rate exceeding the rate at which the node can process and forward the data to other nodes. The excess data then accumulates in buffer storage at the node, which fills at a rate which is the difference between the arrival rate and the processing and forwarding rate. If the congestion persists for a long period of time, the buffer storage will be filled to maximum capacity and any additional data must be discarded.
In an effort to minimize such data loss, different types of flow control systems have been proposed. One such system for lossless data packet delivery for multiple classes of traffic between sources and receivers includes a link level flow control scheme (XON/XOFF) and is used in Ethernet line services. However, a granularity of this scheme is on a per port basis, which leads to a PAUSE of both high and low priority traffic. Specifically, IEEE 802.3 defines Link Level PAUSE (LLP) frames as a solution to guarantee lossless behavior over a point to point link. The main issue with the LLP is that once the LLP is triggered, all the traffic from a source or a sender is stopped. As a result, delay sensitive traffic is also stopped, thereby leading to unpredictable delays. Further, typically the LLP is initiated because of highly bursty Best Effort traffic due to the nature of LLP, thereby mostly affecting the high priority delay sensitive traffic. In addition, the LLP is typically triggered based on fixed thresholds of resource allocation, which can lead to under-utilization of resources across different traffic patterns.
Another solution for lossless behavior makes use of credit based flow control. This solution requires separate buffer pools on a per traffic class basis. However, sharing of buffering resources is not possible with this solution. Consequently, minimal resources cannot be leveraged across traffic classes, resulting in that limited resources may not be shared to meet the bursty demands of typical traffic.